/* Copyright 2018 JDCLOUD.COM

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http:#www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.





Contact: 

NOTE: This class is auto generated by the jdcloud code generator program.
*/

 

#ifndef BillingModel_h
#define BillingModel_h

@interface PriceMap :NSObject

/// Key
@property (strong,nonatomic,nonnull)  NSString*  key;

/// Value
@property (strong,nonatomic,nonnull)  NSNumber*  value;


-(id) initWithKey:(NSString*) key
    value:(NSNumber*)value;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface Tags :NSObject

/// Key
@property (strong,nonatomic,nonnull)  NSString*  key;

/// Value
@property (strong,nonatomic,nonnull)  NSString*  value;


-(id) initWithKey:(NSString*) key
    value:(NSString*)value;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface ResourceOrderQueryCondition :NSObject

/// 主键id
@property (strong,nonatomic,nonnull)  NSNumber*  idValue;

/// 用户pin
@property (strong,nonatomic,nonnull)  NSString*  pin;

/// 资源id
@property (strong,nonatomic,nonnull)  NSString*  resourceId;

/// appCode
@property (strong,nonatomic,nonnull)  NSString*  appCode;

/// 产品码列表
@property (strong,nonatomic,nonnull)  NSArray<NSString*>*  serviceCodeList;

/// 地域
@property (strong,nonatomic,nonnull)  NSString*  region;

/// 网络类型 0: non-BGP, 1: BGP
@property (strong,nonatomic,nonnull)  NSNumber*  networkOperator;

/// 计费类型 1:按配置 2:按用量 3:包年包月
@property (strong,nonatomic,nonnull)  NSNumber*  billingType;

/// resourceIdList
@property (strong,nonatomic,nonnull)  NSArray<NSString*>*  resourceIdList;

/// &gt;0: 订单还有几天到期; &#x3D;&#x3D;0: 订单已经到期; &lt;0: 不管是否到期
@property (strong,nonatomic,nonnull)  NSNumber*  expireInDays;

/// isOnTrial
@property (strong,nonatomic,nonnull)  NSNumber*  isOnTrial;

/// 站点信息 0:中国 1:国际
@property (strong,nonatomic,nonnull)  NSNumber*  site;

/// 资源状态 1:正常 2:停服 3:删除
@property (strong,nonatomic,nonnull)  NSNumber*  status;

/// 计费状态 0:停止计费 1:计费中
@property (strong,nonatomic,nonnull)  NSNumber*  billingStatus;

/// 1、内部计算，使用getExpiringOrderCount时使用，不用传值 默认为-1mybatis筛选时不会关注 2、selectResourceOrderForTask定时任务查询列表时使用，停服天数，必须大于0
@property (strong,nonatomic,nonnull)  NSNumber*  expiringInDays;

/// billingTypeList
@property (strong,nonatomic,nonnull)  NSArray<NSNumber*>*  billingTypeList;

/// 交易单号列表
@property (strong,nonatomic,nonnull)  NSArray<NSString*>*  transactionNos;

/// OpTypes
@property (strong,nonatomic,nonnull)  NSArray<NSNumber*>*  opTypes;

/// 开始时间
@property (strong,nonatomic,nonnull)  NSString*  startTime;

/// 结束时间
@property (strong,nonatomic,nonnull)  NSString*  endTime;

/// 服务编码
@property (strong,nonatomic,nonnull)  NSString*  serviceCode;

/// statusList
@property (strong,nonatomic,nonnull)  NSArray<NSNumber*>*  statusList;

/// excludeResources
@property (strong,nonatomic,nonnull)  NSArray<NSString*>*  excludeResources;

/// orderByClaus
@property (strong,nonatomic,nonnull)  NSString*  orderByClaus;

/// 专有云节点的code（节点云查询使用）
@property (strong,nonatomic,nonnull)  NSString*  node;

/// 部门（节点云查询使用）
@property (strong,nonatomic,nonnull)  NSNumber*  departmentId;

/// PinList
@property (strong,nonatomic,nonnull)  NSArray<NSString*>*  pinList;

/// 是否是专有云 1:是  其他不是
@property (strong,nonatomic,nonnull)  NSNumber*  isSpecial;

/// 节点信息
@property (strong,nonatomic,nonnull)  NSString*  nodeCode;

/// 超时时间，暂时不用
@property (strong,nonatomic,nonnull)  NSNumber*  timeout;

/// 当前页序号
@property (strong,nonatomic,nonnull)  NSNumber*  pageIndex;

/// 每页结果数量
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;

/// Offset
@property (strong,nonatomic,nonnull)  NSNumber*  offset;


-(id) initWithId:(NSNumber*) idValue
    pin:(NSString*)pin
    resourceId:(NSString*)resourceId
    appCode:(NSString*)appCode
    serviceCodeList:(NSArray<NSString*>*)serviceCodeList
    region:(NSString*)region
    networkOperator:(NSNumber*)networkOperator
    billingType:(NSNumber*)billingType
    resourceIdList:(NSArray<NSString*>*)resourceIdList
    expireInDays:(NSNumber*)expireInDays
    isOnTrial:(NSNumber*)isOnTrial
    site:(NSNumber*)site
    status:(NSNumber*)status
    billingStatus:(NSNumber*)billingStatus
    expiringInDays:(NSNumber*)expiringInDays
    billingTypeList:(NSArray<NSNumber*>*)billingTypeList
    transactionNos:(NSArray<NSString*>*)transactionNos
    opTypes:(NSArray<NSNumber*>*)opTypes
    startTime:(NSString*)startTime
    endTime:(NSString*)endTime
    serviceCode:(NSString*)serviceCode
    statusList:(NSArray<NSNumber*>*)statusList
    excludeResources:(NSArray<NSString*>*)excludeResources
    orderByClaus:(NSString*)orderByClaus
    node:(NSString*)node
    departmentId:(NSNumber*)departmentId
    pinList:(NSArray<NSString*>*)pinList
    isSpecial:(NSNumber*)isSpecial
    nodeCode:(NSString*)nodeCode
    timeout:(NSNumber*)timeout
    pageIndex:(NSNumber*)pageIndex
    pageSize:(NSNumber*)pageSize
    offset:(NSNumber*)offset;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface Formula :NSObject

/// 计费项别名
@property (strong,nonatomic,nonnull)  NSString*  key;

/// 用量
@property (strong,nonatomic,nonnull)  NSNumber*  value;

/// 单位
@property (strong,nonatomic,nonnull)  NSString*  unit;

/// 计费项数量
@property (strong,nonatomic,nonnull)  NSNumber*  number;


-(id) initWithKey:(NSString*) key
    value:(NSNumber*)value
    unit:(NSString*)unit
    number:(NSNumber*)number;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface ResourceTagVo :NSObject

/// 标签键
@property (strong,nonatomic,nonnull)  NSString*  tagKey;

/// 标签值
@property (strong,nonatomic,nonnull)  NSString*  tagValue;


-(id) initWithTagKey:(NSString*) tagKey
    tagValue:(NSString*)tagValue;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface EbsBillVo :NSObject

/// 用户pin
@property (strong,nonatomic,nonnull)  NSString*  pin;

/// 数据源ID
@property (strong,nonatomic,nonnull)  NSString*  dataSourceId;

/// 业务线
@property (strong,nonatomic,nonnull)  NSString*  appCode;

/// 产品线
@property (strong,nonatomic,nonnull)  NSString*  serviceCode;

/// 费用时间
@property (strong,nonatomic,nonnull)  NSString*  chargeTime;

/// 支付金额
@property (strong,nonatomic,nonnull)  NSNumber*  payFee;

/// 计费类型
@property (strong,nonatomic,nonnull)  NSNumber*  billingType;

/// 开始时间
@property (strong,nonatomic,nonnull)  NSString*  startTime;

/// 结束时间
@property (strong,nonatomic,nonnull)  NSString*  endTime;

/// 采购价格
@property (strong,nonatomic,nonnull)  NSNumber*  purchasePrice;

/// 供应商
@property (strong,nonatomic,nonnull)  NSString*  supplier;

/// 核算组织
@property (strong,nonatomic,nonnull)  NSString*  org;

/// 用费分组
@property (strong,nonatomic,nonnull)  NSNumber*  userGroup;

/// 域名订单ID
@property (strong,nonatomic,nonnull)  NSString*  domainOrderId;

/// 交易方名称
@property (strong,nonatomic,nonnull)  NSString*  traderName;

/// 订单类型
@property (strong,nonatomic,nonnull)  NSString*  orderType;

/// 税率
@property (strong,nonatomic,nonnull)  NSNumber*  taxRate;

/// 部门
@property (strong,nonatomic,nonnull)  NSString*  deptNo;

/// 返回编码0成功
@property (strong,nonatomic,nonnull)  NSNumber*  code;

/// 返回消息
@property (strong,nonatomic,nonnull)  NSString*  message;


-(id) initWithPin:(NSString*) pin
    dataSourceId:(NSString*)dataSourceId
    appCode:(NSString*)appCode
    serviceCode:(NSString*)serviceCode
    chargeTime:(NSString*)chargeTime
    payFee:(NSNumber*)payFee
    billingType:(NSNumber*)billingType
    startTime:(NSString*)startTime
    endTime:(NSString*)endTime
    purchasePrice:(NSNumber*)purchasePrice
    supplier:(NSString*)supplier
    org:(NSString*)org
    userGroup:(NSNumber*)userGroup
    domainOrderId:(NSString*)domainOrderId
    traderName:(NSString*)traderName
    orderType:(NSString*)orderType
    taxRate:(NSNumber*)taxRate
    deptNo:(NSString*)deptNo
    code:(NSNumber*)code
    message:(NSString*)message;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface CompatibleBill :NSObject

/// 账单ID
@property (strong,nonatomic,nonnull)  NSNumber*  billId;

/// 用户pin
@property (strong,nonatomic,nonnull)  NSString*  pin;

/// 站点
@property (strong,nonatomic,nonnull)  NSNumber*  site;

/// 区域
@property (strong,nonatomic,nonnull)  NSString*  region;

/// appCode
@property (strong,nonatomic,nonnull)  NSString*  appCode;

/// appCodeName
@property (strong,nonatomic,nonnull)  NSString*  appCodeName;

/// serviceCode
@property (strong,nonatomic,nonnull)  NSString*  serviceCode;

/// serviceCodeName
@property (strong,nonatomic,nonnull)  NSString*  serviceCodeName;

/// 资源id
@property (strong,nonatomic,nonnull)  NSString*  resourceId;

/// 计费类型
@property (strong,nonatomic,nonnull)  NSNumber*  billingType;

/// 计费类型描述
@property (strong,nonatomic,nonnull)  NSString*  billingTypeName;

/// 规格
@property (strong,nonatomic,nonnull)  NSString*  formula;

/// 规格
@property (strong,nonatomic,nonnull)  NSString*  formulaStr;

/// 开始时间
@property (strong,nonatomic,nonnull)  NSString*  startTime;

/// 结束时间
@property (strong,nonatomic,nonnull)  NSString*  endTime;

/// 创建时间
@property (strong,nonatomic,nonnull)  NSString*  createTime;

/// 账单金额
@property (strong,nonatomic,nonnull)  NSNumber*  billFee;

/// 账单金额（保留小数点后2位）
@property (strong,nonatomic,nonnull)  NSNumber*  billFee2;

/// 折扣金额
@property (strong,nonatomic,nonnull)  NSNumber*  discountFee;

/// 代金券id
@property (strong,nonatomic,nonnull)  NSString*  couponId;

/// 优惠券金额
@property (strong,nonatomic,nonnull)  NSNumber*  couponFee;

/// 优惠后金额
@property (strong,nonatomic,nonnull)  NSNumber*  actualFee;

/// 代金券金额
@property (strong,nonatomic,nonnull)  NSNumber*  cashCouponFee;

/// 余额支付金额
@property (strong,nonatomic,nonnull)  NSNumber*  balancePayFee;

/// 现金支付金额
@property (strong,nonatomic,nonnull)  NSNumber*  cashPayFee;

/// 欠费金额
@property (strong,nonatomic,nonnull)  NSNumber*  arrearFee;

/// 支付状态
@property (strong,nonatomic,nonnull)  NSNumber*  paySate;

/// 1:老计费   2：新计费
@property (strong,nonatomic,nonnull)  NSNumber*  systemType;

/// 资源名称
@property (strong,nonatomic,nonnull)  NSString*  resourceName;


-(id) initWithBillId:(NSNumber*) billId
    pin:(NSString*)pin
    site:(NSNumber*)site
    region:(NSString*)region
    appCode:(NSString*)appCode
    appCodeName:(NSString*)appCodeName
    serviceCode:(NSString*)serviceCode
    serviceCodeName:(NSString*)serviceCodeName
    resourceId:(NSString*)resourceId
    billingType:(NSNumber*)billingType
    billingTypeName:(NSString*)billingTypeName
    formula:(NSString*)formula
    formulaStr:(NSString*)formulaStr
    startTime:(NSString*)startTime
    endTime:(NSString*)endTime
    createTime:(NSString*)createTime
    billFee:(NSNumber*)billFee
    billFee2:(NSNumber*)billFee2
    discountFee:(NSNumber*)discountFee
    couponId:(NSString*)couponId
    couponFee:(NSNumber*)couponFee
    actualFee:(NSNumber*)actualFee
    cashCouponFee:(NSNumber*)cashCouponFee
    balancePayFee:(NSNumber*)balancePayFee
    cashPayFee:(NSNumber*)cashPayFee
    arrearFee:(NSNumber*)arrearFee
    paySate:(NSNumber*)paySate
    systemType:(NSNumber*)systemType
    resourceName:(NSString*)resourceName;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface OrderCompensateFeeVo :NSObject

/// 用户pin
@property (strong,nonatomic,nonnull)  NSString*  pin;

/// 应用码
@property (strong,nonatomic,nonnull)  NSString*  appCode;

/// 服务码
@property (strong,nonatomic,nonnull)  NSString*  serviceCode;

/// 资源id
@property (strong,nonatomic,nonnull)  NSString*  resourceId;

/// 资源区域
@property (strong,nonatomic,nonnull)  NSString*  region;

/// 开始时间
@property (strong,nonatomic,nonnull)  NSString*  startTime;

/// 结束时间
@property (strong,nonatomic,nonnull)  NSString*  endTime;

/// 计算总价
@property (strong,nonatomic,nonnull)  NSNumber*  totalFee;

/// 计费类型 1:按配置 2:按用量 3:包年包月 4:一次性
@property (strong,nonatomic,nonnull)  NSNumber*  billingType;


-(id) initWithPin:(NSString*) pin
    appCode:(NSString*)appCode
    serviceCode:(NSString*)serviceCode
    resourceId:(NSString*)resourceId
    region:(NSString*)region
    startTime:(NSString*)startTime
    endTime:(NSString*)endTime
    totalFee:(NSNumber*)totalFee
    billingType:(NSNumber*)billingType;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface ResourceOrderStatusResultItem :NSObject

/// 资源id
@property (strong,nonatomic,nonnull)  NSString*  resourceId;

/// 计费类型 1:按配置 2:按用量 3:包年包月 4:一次性
@property (strong,nonatomic,nonnull)  NSNumber*  billingType;

/// 资源状态 1:正常 2:停服 3:删除
@property (strong,nonatomic,nonnull)  NSNumber*  status;

/// 用户pin
@property (strong,nonatomic,nonnull)  NSString*  pin;

/// 资源区域
@property (strong,nonatomic,nonnull)  NSString*  region;

/// 操作时间
@property (strong,nonatomic,nonnull)  NSString*  updateTime;


-(id) initWithResourceId:(NSString*) resourceId
    billingType:(NSNumber*)billingType
    status:(NSNumber*)status
    pin:(NSString*)pin
    region:(NSString*)region
    updateTime:(NSString*)updateTime;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface BillQueryCondition :NSObject

/// 查询类别   1：资源账单   2：消费记录
@property (strong,nonatomic,nonnull)  NSNumber*  queryType;

/// 用户pin
@property (strong,nonatomic,nonnull)  NSString*  pin;

/// appCode
@property (strong,nonatomic,nonnull)  NSString*  appCode;

/// serviceCode
@property (strong,nonatomic,nonnull)  NSString*  serviceCode;

/// 计费类型
@property (strong,nonatomic,nonnull)  NSNumber*  billingType;

/// 支付类型
@property (strong,nonatomic,nonnull)  NSNumber*  payType;

/// 支付状态
@property (strong,nonatomic,nonnull)  NSNumber*  payState;

/// 1按账期、2按消费时间
@property (strong,nonatomic,nonnull)  NSNumber*  timeType;

/// 开始时间
@property (strong,nonatomic,nonnull)  NSString*  startTime;

/// 结束时间
@property (strong,nonatomic,nonnull)  NSString*  endTime;

/// 是否忽略0元账单
@property (strong,nonatomic,nonnull)  NSNumber*  ignoreZero;

/// 资源id
@property (strong,nonatomic,nonnull)  NSString*  resourceId;

/// 站点
@property (strong,nonatomic,nonnull)  NSNumber*  site;

/// 角色
@property (strong,nonatomic,nonnull)  NSNumber*  role;

/// 区域
@property (strong,nonatomic,nonnull)  NSString*  region;


-(id) initWithQueryType:(NSNumber*) queryType
    pin:(NSString*)pin
    appCode:(NSString*)appCode
    serviceCode:(NSString*)serviceCode
    billingType:(NSNumber*)billingType
    payType:(NSNumber*)payType
    payState:(NSNumber*)payState
    timeType:(NSNumber*)timeType
    startTime:(NSString*)startTime
    endTime:(NSString*)endTime
    ignoreZero:(NSNumber*)ignoreZero
    resourceId:(NSString*)resourceId
    site:(NSNumber*)site
    role:(NSNumber*)role
    region:(NSString*)region;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface EbsSeperateBillVo :NSObject

/// 用户pin
@property (strong,nonatomic,nonnull)  NSString*  pin;

/// 数据源ID
@property (strong,nonatomic,nonnull)  NSString*  dataSourceId;

/// 业务线
@property (strong,nonatomic,nonnull)  NSString*  appCode;

/// 费用时间
@property (strong,nonatomic,nonnull)  NSString*  chargeTime;

/// 总金额
@property (strong,nonatomic,nonnull)  NSNumber*  totalFee;

/// 分摊金额
@property (strong,nonatomic,nonnull)  NSNumber*  seperateFee;

/// 核算组织
@property (strong,nonatomic,nonnull)  NSString*  org;

/// 用户分组
@property (strong,nonatomic,nonnull)  NSNumber*  userGroup;

/// 交易方名称
@property (strong,nonatomic,nonnull)  NSString*  traderName;

/// 订单类型
@property (strong,nonatomic,nonnull)  NSString*  orderType;

/// 成本金额
@property (strong,nonatomic,nonnull)  NSNumber*  costFee;

/// 税率
@property (strong,nonatomic,nonnull)  NSNumber*  taxRate;

/// 部门
@property (strong,nonatomic,nonnull)  NSString*  deptNo;

/// 部门
@property (strong,nonatomic,nonnull)  NSString*  sourceId;

/// 返回编码0成功
@property (strong,nonatomic,nonnull)  NSNumber*  code;

/// 返回消息
@property (strong,nonatomic,nonnull)  NSString*  message;


-(id) initWithPin:(NSString*) pin
    dataSourceId:(NSString*)dataSourceId
    appCode:(NSString*)appCode
    chargeTime:(NSString*)chargeTime
    totalFee:(NSNumber*)totalFee
    seperateFee:(NSNumber*)seperateFee
    org:(NSString*)org
    userGroup:(NSNumber*)userGroup
    traderName:(NSString*)traderName
    orderType:(NSString*)orderType
    costFee:(NSNumber*)costFee
    taxRate:(NSNumber*)taxRate
    deptNo:(NSString*)deptNo
    sourceId:(NSString*)sourceId
    code:(NSNumber*)code
    message:(NSString*)message;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface ArrearInfoVo :NSObject

/// 用户pin
@property (strong,nonatomic,nonnull)  NSString*  pin;

/// 欠费金额
@property (strong,nonatomic,nonnull)  NSNumber*  arrearFee;

/// 首次欠费时间
@property (strong,nonatomic,nonnull)  NSString*  firstArrearDate;

/// 欠费天数
@property (strong,nonatomic,nonnull)  NSNumber*  arrearDays;


-(id) initWithPin:(NSString*) pin
    arrearFee:(NSNumber*)arrearFee
    firstArrearDate:(NSString*)firstArrearDate
    arrearDays:(NSNumber*)arrearDays;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface Pagination :NSObject

/// 当前页
@property (strong,nonatomic,nonnull)  NSNumber*  currPageNo;

/// 页数
@property (strong,nonatomic,nonnull)  NSNumber*  numberPages;

/// 每页记录数
@property (strong,nonatomic,nonnull)  NSNumber*  numberRecords;

/// 页面大小
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;

/// 起始页
@property (strong,nonatomic,nonnull)  NSNumber*  startIndex;


-(id) initWithCurrPageNo:(NSNumber*) currPageNo
    numberPages:(NSNumber*)numberPages
    numberRecords:(NSNumber*)numberRecords
    pageSize:(NSNumber*)pageSize
    startIndex:(NSNumber*)startIndex;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface Consumption :NSObject

/// 计费类型
@property (strong,nonatomic,nonnull)  NSNumber*  billingType;

/// 支付类型
@property (strong,nonatomic,nonnull)  NSNumber*  payType;

/// 优惠后金额
@property (strong,nonatomic,nonnull)  NSNumber*  actualFee;

/// 现金支付
@property (strong,nonatomic,nonnull)  NSNumber*  cashPayFee;

/// 余额支付
@property (strong,nonatomic,nonnull)  NSNumber*  balancePayFee;

/// 优惠券支付金额
@property (strong,nonatomic,nonnull)  NSNumber*  cashCouponPayFee;

/// 欠费金额
@property (strong,nonatomic,nonnull)  NSNumber*  arrearFee;

/// 分组显示值
@property (strong,nonatomic,nonnull)  NSString*  groupTagValue;


-(id) initWithBillingType:(NSNumber*) billingType
    payType:(NSNumber*)payType
    actualFee:(NSNumber*)actualFee
    cashPayFee:(NSNumber*)cashPayFee
    balancePayFee:(NSNumber*)balancePayFee
    cashCouponPayFee:(NSNumber*)cashCouponPayFee
    arrearFee:(NSNumber*)arrearFee
    groupTagValue:(NSString*)groupTagValue;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface ConsumeRecord :NSObject

/// 消费记录数据库唯一id
@property (strong,nonatomic,nonnull)  NSNumber*  idValue;

/// 消费记录id
@property (strong,nonatomic,nonnull)  NSNumber*  billingRecordId;

/// appCode
@property (strong,nonatomic,nonnull)  NSString*  appCode;

/// serviceCode
@property (strong,nonatomic,nonnull)  NSString*  serviceCode;

/// 区域
@property (strong,nonatomic,nonnull)  NSString*  region;

/// 资源id
@property (strong,nonatomic,nonnull)  NSString*  resourceId;

/// 用户pin
@property (strong,nonatomic,nonnull)  NSString*  pin;

/// 规格
@property (strong,nonatomic,nonnull)  NSString*  formula;

/// 计费类型
@property (strong,nonatomic,nonnull)  NSNumber*  billingType;

/// 价格快照
@property (strong,nonatomic,nonnull)  NSString*  priceSnapShot;

/// 开始时间
@property (strong,nonatomic,nonnull)  NSString*  startTime;

/// 结束时间
@property (strong,nonatomic,nonnull)  NSString*  endTime;

/// 创建日期
@property (strong,nonatomic,nonnull)  NSString*  createTime;

/// 账单金额
@property (strong,nonatomic,nonnull)  NSNumber*  billFee;

/// 账单金额保留小数点后2位
@property (strong,nonatomic,nonnull)  NSNumber*  billFee2;

/// 折扣金额
@property (strong,nonatomic,nonnull)  NSNumber*  discountFee;

/// 优惠券id
@property (strong,nonatomic,nonnull)  NSString*  couponId;

/// 优惠金额
@property (strong,nonatomic,nonnull)  NSNumber*  couponFee;

/// 交易单号
@property (strong,nonatomic,nonnull)  NSString*  transactionNo;

/// null
@property (strong,nonatomic,nonnull)  NSNumber*  isBillGenerated;

/// 子账单id
@property (strong,nonatomic,nonnull)  NSNumber*  subBillId;

/// 退款单号
@property (strong,nonatomic,nonnull)  NSString*  refundNo;

/// 优惠后金额
@property (strong,nonatomic,nonnull)  NSNumber*  actualFee;

/// 规格名称
@property (strong,nonatomic,nonnull)  NSString*  formulaName;


-(id) initWithId:(NSNumber*) idValue
    billingRecordId:(NSNumber*)billingRecordId
    appCode:(NSString*)appCode
    serviceCode:(NSString*)serviceCode
    region:(NSString*)region
    resourceId:(NSString*)resourceId
    pin:(NSString*)pin
    formula:(NSString*)formula
    billingType:(NSNumber*)billingType
    priceSnapShot:(NSString*)priceSnapShot
    startTime:(NSString*)startTime
    endTime:(NSString*)endTime
    createTime:(NSString*)createTime
    billFee:(NSNumber*)billFee
    billFee2:(NSNumber*)billFee2
    discountFee:(NSNumber*)discountFee
    couponId:(NSString*)couponId
    couponFee:(NSNumber*)couponFee
    transactionNo:(NSString*)transactionNo
    isBillGenerated:(NSNumber*)isBillGenerated
    subBillId:(NSNumber*)subBillId
    refundNo:(NSString*)refundNo
    actualFee:(NSNumber*)actualFee
    formulaName:(NSString*)formulaName;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface ResourceAeVo :NSObject

/// 自增主键
@property (strong,nonatomic,nonnull)  NSNumber*  idValue;

/// 站点标识1:中国 2:国际
@property (strong,nonatomic,nonnull)  NSNumber*  site;

/// 应用编码
@property (strong,nonatomic,nonnull)  NSString*  appCode;

/// 地域
@property (strong,nonatomic,nonnull)  NSString*  region;

/// 服务编码
@property (strong,nonatomic,nonnull)  NSString*  serviceCode;

/// 配置项
@property (strong,nonatomic,nonnull)  NSString*  formula;

/// 用户pin
@property (strong,nonatomic,nonnull)  NSString*  pin;

/// 资源ID
@property (strong,nonatomic,nonnull)  NSString*  resourceId;

/// 计费类型
@property (strong,nonatomic,nonnull)  NSNumber*  billingType;

/// 账单ID
@property (strong,nonatomic,nonnull)  NSNumber*  subBillId;

/// 状态 0:无 1:正常 2:欠费, 3:因欠费而停机, 4:欠费删除资源, 6:已删除但已不欠费, 7:欠费延期，8:删除并且欠费，9:欠费删除数据，12:已过期, 13:因过期而停机, 14:过期删除资源, 17:过期延期 19:过期删除数据23:管理员停服，24:管理员删除,34:用户删除,35:退款删除
@property (strong,nonatomic,nonnull)  NSNumber*  state;

/// 首次欠费时间（各欠费状态）或过期时间（各过期状态）
@property (strong,nonatomic,nonnull)  NSString*  stateTime;

/// 变成此状态的原因.0:无 1:账单欠费, 2:资源过期 ,3:加入、移出白名单 ,4:补扣款成功, 5:规则修改,6:续费 7:管理员操作,8:用户操作
@property (strong,nonatomic,nonnull)  NSNumber*  op;

/// 是否为最后状态记录
@property (strong,nonatomic,nonnull)  NSNumber*  isLastRecord;

/// 本条记录生成时刻、进入当前state的时刻
@property (strong,nonatomic,nonnull)  NSString*  createTime;

/// 修改时间
@property (strong,nonatomic,nonnull)  NSString*  updateTime;

/// 资源预计释放时间
@property (strong,nonatomic,nonnull)  NSString*  toDeleteTime;

/// CapState
@property (strong,nonatomic,nonnull)  NSNumber*  capState;


-(id) initWithId:(NSNumber*) idValue
    site:(NSNumber*)site
    appCode:(NSString*)appCode
    region:(NSString*)region
    serviceCode:(NSString*)serviceCode
    formula:(NSString*)formula
    pin:(NSString*)pin
    resourceId:(NSString*)resourceId
    billingType:(NSNumber*)billingType
    subBillId:(NSNumber*)subBillId
    state:(NSNumber*)state
    stateTime:(NSString*)stateTime
    op:(NSNumber*)op
    isLastRecord:(NSNumber*)isLastRecord
    createTime:(NSString*)createTime
    updateTime:(NSString*)updateTime
    toDeleteTime:(NSString*)toDeleteTime
    capState:(NSNumber*)capState;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface ResourceOrderStatusCondition :NSObject

/// 站点信息 0:中国 1:国际
@property (strong,nonatomic,nonnull)  NSNumber*  site;

/// 服务编码
@property (strong,nonatomic,nonnull)  NSString*  serviceCode;

/// 资源状态 1:正常 2:停服 3:删除
@property (strong,nonatomic,nonnull)  NSNumber*  status;

/// 资源id列表
@property (strong,nonatomic,nonnull)  NSArray<NSString*>*  resourceIdList;

/// 当前页序号
@property (strong,nonatomic,nonnull)  NSNumber*  pageIndex;

/// 每页结果数量
@property (strong,nonatomic,nonnull)  NSNumber*  pageSize;


-(id) initWithSite:(NSNumber*) site
    serviceCode:(NSString*)serviceCode
    status:(NSNumber*)status
    resourceIdList:(NSArray<NSString*>*)resourceIdList
    pageIndex:(NSNumber*)pageIndex
    pageSize:(NSNumber*)pageSize;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface ResourceOrderStatusVo :NSObject

/// 资源id
@property (strong,nonatomic,nonnull)  NSString*  resourceId;

/// 用户pin
@property (strong,nonatomic,nonnull)  NSString*  pin;

/// 资源状态 1:正常 2:停服 3:删除
@property (strong,nonatomic,nonnull)  NSNumber*  status;

/// 计费状态 0:停止计费 1:计费中
@property (strong,nonatomic,nonnull)  NSNumber*  billingStatus;

/// 计费类型 1:按配置 2:按用量 3:包年包月
@property (strong,nonatomic,nonnull)  NSNumber*  billingType;

/// 结束时间
@property (strong,nonatomic,nonnull)  NSString*  endTime;

/// billingType兼容交易系统字段
@property (strong,nonatomic,nonnull)  NSNumber*  chargeMode;

/// timeSpan兼容交易系统字段
@property (strong,nonatomic,nonnull)  NSNumber*  chargeDuration;

/// timeUnit兼容交易系统字段
@property (strong,nonatomic,nonnull)  NSNumber*  chargeUnit;

/// 站点信息 0:中国 1:国际  10:专有云
@property (strong,nonatomic,nonnull)  NSNumber*  site;

/// 操作时间
@property (strong,nonatomic,nonnull)  NSString*  operateTime;


-(id) initWithResourceId:(NSString*) resourceId
    pin:(NSString*)pin
    status:(NSNumber*)status
    billingStatus:(NSNumber*)billingStatus
    billingType:(NSNumber*)billingType
    endTime:(NSString*)endTime
    chargeMode:(NSNumber*)chargeMode
    chargeDuration:(NSNumber*)chargeDuration
    chargeUnit:(NSNumber*)chargeUnit
    site:(NSNumber*)site
    operateTime:(NSString*)operateTime;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface BillStatisticsInfoVo :NSObject

/// 总金额
@property (strong,nonatomic,nonnull)  NSNumber*  totalFee;

/// 现金支付金额
@property (strong,nonatomic,nonnull)  NSNumber*  cashPayFee;

/// 优惠券支付金额
@property (strong,nonatomic,nonnull)  NSNumber*  cashCouponPayFee;

/// 余额支付金额
@property (strong,nonatomic,nonnull)  NSNumber*  balancePayFee;

/// 欠费金额
@property (strong,nonatomic,nonnull)  NSNumber*  arrearFee;

/// 账单金额
@property (strong,nonatomic,nonnull)  NSNumber*  billFee;

/// 折扣金额
@property (strong,nonatomic,nonnull)  NSNumber*  discountFee;


-(id) initWithTotalFee:(NSNumber*) totalFee
    cashPayFee:(NSNumber*)cashPayFee
    cashCouponPayFee:(NSNumber*)cashCouponPayFee
    balancePayFee:(NSNumber*)balancePayFee
    arrearFee:(NSNumber*)arrearFee
    billFee:(NSNumber*)billFee
    discountFee:(NSNumber*)discountFee;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface ProductDetailList :NSObject

/// Key
@property (strong,nonatomic,nonnull)  NSNumber*  key;

/// Values
@property (strong,nonatomic,nonnull)  Pagination*  values;


-(id) initWithKey:(NSNumber*) key
    values:(Pagination*)values;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface ResourceOrderVo :NSObject

/// 主键id
@property (strong,nonatomic,nonnull)  NSNumber*  idValue;

/// 交易单唯一标识
@property (strong,nonatomic,nonnull)  NSString*  transactionNo;

/// 资源id
@property (strong,nonatomic,nonnull)  NSString*  resourceId;

/// 计费类型 1:按配置 2:按用量 3:包年包月 4:一次性
@property (strong,nonatomic,nonnull)  NSNumber*  billingType;

/// 时长类型 1:小时 2:天 3:月 4:年
@property (strong,nonatomic,nonnull)  NSNumber*  timeUnit;

/// 时长字段，与timeUnit字段构成具体时长
@property (strong,nonatomic,nonnull)  NSNumber*  timeSpan;

/// 资源状态 1:正常 2:停服 3:删除
@property (strong,nonatomic,nonnull)  NSNumber*  status;

/// 计费状态 0:停止计费 1:计费中
@property (strong,nonatomic,nonnull)  NSNumber*  billingStatus;

/// 网络类型0:无 1: non-BGP, 2: BGP
@property (strong,nonatomic,nonnull)  NSNumber*  networkOperator;

/// 用户pin
@property (strong,nonatomic,nonnull)  NSString*  pin;

/// 应用码
@property (strong,nonatomic,nonnull)  NSString*  appCode;

/// 服务码
@property (strong,nonatomic,nonnull)  NSString*  serviceCode;

/// 站点标识0:中国 1:国际
@property (strong,nonatomic,nonnull)  NSNumber*  site;

/// 资源区域
@property (strong,nonatomic,nonnull)  NSString*  region;

/// 配置信息
@property (strong,nonatomic,nonnull)  NSArray<Formula*>*  formula;

/// 否为试用资源 0:非试用 1:试用
@property (strong,nonatomic,nonnull)  NSNumber*  isOnTrial;

/// 开始时间
@property (strong,nonatomic,nonnull)  NSString*  startTime;

/// 结束时间
@property (strong,nonatomic,nonnull)  NSString*  endTime;

/// 创建时间
@property (strong,nonatomic,nonnull)  NSString*  createTime;

/// 支付时间
@property (strong,nonatomic,nonnull)  NSString*  payTime;

/// formula转换成字符串
@property (strong,nonatomic,nonnull)  NSString*  formulaStr;

/// billingType兼容交易系统字段
@property (strong,nonatomic,nonnull)  NSNumber*  chargeMode;

/// timeSpan兼容交易系统字段
@property (strong,nonatomic,nonnull)  NSNumber*  chargeDuration;

/// timeUnit兼容交易系统字段
@property (strong,nonatomic,nonnull)  NSNumber*  chargeUnit;

/// 欠费过期状态
@property (strong,nonatomic,nonnull)  NSNumber*  aeStatus;

/// 欠费、过期资源释放时间
@property (strong,nonatomic,nonnull)  NSString*  releasingTime;

/// 交易单模块sourceId 计费不关心
@property (strong,nonatomic,nonnull)  NSString*  sourceId;

/// 计费开始时间 续费时本次续费周期开始时间
@property (strong,nonatomic,nonnull)  NSString*  billingStartTime;

/// 最新价格map
@property (strong,nonatomic,nonnull)  PriceMap*  priceMap;

/// 价格快照
@property (strong,nonatomic,nonnull)  NSString*  priceSnapshot;

/// 订单折扣前总价
@property (strong,nonatomic,nonnull)  NSNumber*  price;

/// 折扣后订单价格
@property (strong,nonatomic,nonnull)  NSNumber*  discountedPrice;

/// 即将到期天数
@property (strong,nonatomic,nonnull)  NSNumber*  expiringDays;

/// 计费类型描述 例如:按配置、包年包月
@property (strong,nonatomic,nonnull)  NSString*  billingCategoryDescription;

/// 计费详情描述 例如:按配置、包年包月（一年）
@property (strong,nonatomic,nonnull)  NSString*  descriptionValue;

/// refundNo
@property (strong,nonatomic,nonnull)  NSString*  refundNo;

/// 计费类型单号
@property (strong,nonatomic,nonnull)  NSString*  billingTypeName;

/// 促销明细
@property (strong,nonatomic,nonnull)  NSString*  favorableInfo;

/// 资源名
@property (strong,nonatomic,nonnull)  NSString*  resourceName;

/// 变配明细（1-升配，2-降配，3-调整配置,4-续费,5-续费升配,6-续费降配,7-配置转包年包月）
@property (strong,nonatomic,nonnull)  NSNumber*  processType;

/// 资源申请人
@property (strong,nonatomic,nonnull)  NSString*  applicant;

/// 计费模式  1.停服停止计费  2.关机停止计费
@property (strong,nonatomic,nonnull)  NSNumber*  billingMode;

/// 启服、停服、停止计费时间
@property (strong,nonatomic,nonnull)  NSString*  operateTime;


-(id) initWithId:(NSNumber*) idValue
    transactionNo:(NSString*)transactionNo
    resourceId:(NSString*)resourceId
    billingType:(NSNumber*)billingType
    timeUnit:(NSNumber*)timeUnit
    timeSpan:(NSNumber*)timeSpan
    status:(NSNumber*)status
    billingStatus:(NSNumber*)billingStatus
    networkOperator:(NSNumber*)networkOperator
    pin:(NSString*)pin
    appCode:(NSString*)appCode
    serviceCode:(NSString*)serviceCode
    site:(NSNumber*)site
    region:(NSString*)region
    formula:(NSArray<Formula*>*)formula
    isOnTrial:(NSNumber*)isOnTrial
    startTime:(NSString*)startTime
    endTime:(NSString*)endTime
    createTime:(NSString*)createTime
    payTime:(NSString*)payTime
    formulaStr:(NSString*)formulaStr
    chargeMode:(NSNumber*)chargeMode
    chargeDuration:(NSNumber*)chargeDuration
    chargeUnit:(NSNumber*)chargeUnit
    aeStatus:(NSNumber*)aeStatus
    releasingTime:(NSString*)releasingTime
    sourceId:(NSString*)sourceId
    billingStartTime:(NSString*)billingStartTime
    priceMap:(PriceMap*)priceMap
    priceSnapshot:(NSString*)priceSnapshot
    price:(NSNumber*)price
    discountedPrice:(NSNumber*)discountedPrice
    expiringDays:(NSNumber*)expiringDays
    billingCategoryDescription:(NSString*)billingCategoryDescription
    descriptionValue:(NSString*)descriptionValue
    refundNo:(NSString*)refundNo
    billingTypeName:(NSString*)billingTypeName
    favorableInfo:(NSString*)favorableInfo
    resourceName:(NSString*)resourceName
    processType:(NSNumber*)processType
    applicant:(NSString*)applicant
    billingMode:(NSNumber*)billingMode
    operateTime:(NSString*)operateTime;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface ResourceBillQueryResultItem :NSObject

/// 账单id
@property (strong,nonatomic,nonnull)  NSNumber*  billId;

/// 用户pin
@property (strong,nonatomic,nonnull)  NSString*  pin;

/// appCode
@property (strong,nonatomic,nonnull)  NSString*  appCode;

/// serviceCode
@property (strong,nonatomic,nonnull)  NSString*  serviceCode;

/// serviceCodeName
@property (strong,nonatomic,nonnull)  NSString*  serviceCodeName;

/// 计费类型
@property (strong,nonatomic,nonnull)  NSNumber*  billingType;

/// 计费类型描述
@property (strong,nonatomic,nonnull)  NSString*  billingTypeName;

/// 资源id
@property (strong,nonatomic,nonnull)  NSString*  resourceId;

/// 区域
@property (strong,nonatomic,nonnull)  NSString*  region;

/// 区域名称
@property (strong,nonatomic,nonnull)  NSString*  regionName;

/// 账单开始时间
@property (strong,nonatomic,nonnull)  NSString*  billStartTime;

/// 账单结束时间
@property (strong,nonatomic,nonnull)  NSString*  billEndTime;

/// 开始时间
@property (strong,nonatomic,nonnull)  NSString*  startTime;

/// 结束时间
@property (strong,nonatomic,nonnull)  NSString*  endTime;

/// 总金额
@property (strong,nonatomic,nonnull)  NSNumber*  totalFee;

/// 现金支付金额
@property (strong,nonatomic,nonnull)  NSNumber*  cashPayFee;

/// 代金券支付金额
@property (strong,nonatomic,nonnull)  NSNumber*  cashCouponPayFee;

/// 余额支付金额
@property (strong,nonatomic,nonnull)  NSNumber*  balancePayFee;

/// 欠费金额
@property (strong,nonatomic,nonnull)  NSNumber*  arrearFee;

/// 时间
@property (strong,nonatomic,nonnull)  NSNumber*  timeSpan;

/// 时间单位
@property (strong,nonatomic,nonnull)  NSNumber*  timeUnit;

/// 1：新购 2：续费 3：配置变更
@property (strong,nonatomic,nonnull)  NSString*  opTypeName;

/// 时间
@property (strong,nonatomic,nonnull)  NSString*  timeSpanName;

/// 时间单位名称 1：小时 2：天 3：月 4：年
@property (strong,nonatomic,nonnull)  NSString*  timeUnitName;

/// 结算日期
@property (strong,nonatomic,nonnull)  NSString*  settleTime;

/// 1：老计费 2：新计费
@property (strong,nonatomic,nonnull)  NSNumber*  systemType;

/// 资源名称
@property (strong,nonatomic,nonnull)  NSString*  resourceName;

/// 标签明细
@property (strong,nonatomic,nonnull)  NSArray<ResourceTagVo*>*  tagDetails;


-(id) initWithBillId:(NSNumber*) billId
    pin:(NSString*)pin
    appCode:(NSString*)appCode
    serviceCode:(NSString*)serviceCode
    serviceCodeName:(NSString*)serviceCodeName
    billingType:(NSNumber*)billingType
    billingTypeName:(NSString*)billingTypeName
    resourceId:(NSString*)resourceId
    region:(NSString*)region
    regionName:(NSString*)regionName
    billStartTime:(NSString*)billStartTime
    billEndTime:(NSString*)billEndTime
    startTime:(NSString*)startTime
    endTime:(NSString*)endTime
    totalFee:(NSNumber*)totalFee
    cashPayFee:(NSNumber*)cashPayFee
    cashCouponPayFee:(NSNumber*)cashCouponPayFee
    balancePayFee:(NSNumber*)balancePayFee
    arrearFee:(NSNumber*)arrearFee
    timeSpan:(NSNumber*)timeSpan
    timeUnit:(NSNumber*)timeUnit
    opTypeName:(NSString*)opTypeName
    timeSpanName:(NSString*)timeSpanName
    timeUnitName:(NSString*)timeUnitName
    settleTime:(NSString*)settleTime
    systemType:(NSNumber*)systemType
    resourceName:(NSString*)resourceName
    tagDetails:(NSArray<ResourceTagVo*>*)tagDetails;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface EbsBillVoRequest :NSObject

/// 核算账单列表
@property (strong,nonatomic,nonnull)  NSArray<EbsBillVo*>*  ebsBillVoList;


-(id) initWithEbsBillVoList:(NSArray<EbsBillVo*>*) ebsBillVoList;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface OrderPriceDetail :NSObject

/// 折扣前总价
@property (strong,nonatomic,nonnull)  NSNumber*  price;

/// 四位小数价格
@property (strong,nonatomic,nonnull)  NSNumber*  priceScale4;

/// 折扣金额
@property (strong,nonatomic,nonnull)  NSNumber*  discount;

/// 折扣后订单金额
@property (strong,nonatomic,nonnull)  NSNumber*  discountedPrice;

/// 订单原价 包年时 一年原价为12个月价格，totalPrice为10个月价格
@property (strong,nonatomic,nonnull)  NSNumber*  originalPrice;

/// 资源id
@property (strong,nonatomic,nonnull)  NSString*  resourceId;

/// 业务线
@property (strong,nonatomic,nonnull)  NSString*  appCode;

/// 产品线
@property (strong,nonatomic,nonnull)  NSString*  serviceCode;

/// 站点  0:主站  其他:专有云
@property (strong,nonatomic,nonnull)  NSNumber*  site;

/// 地域
@property (strong,nonatomic,nonnull)  NSString*  region;

/// 计费类型1:按配置2:按用量3:包年包月
@property (strong,nonatomic,nonnull)  NSNumber*  billingType;

/// 时长
@property (strong,nonatomic,nonnull)  NSNumber*  timeSpan;

/// 时长类型 1:小时2:天3:月4:年
@property (strong,nonatomic,nonnull)  NSNumber*  timeUnit;

/// 网络类型 0:non1:非BGP2:BGP
@property (strong,nonatomic,nonnull)  NSNumber*  networkOperator;

/// 配置信息
@property (strong,nonatomic,nonnull)  NSArray<Formula*>*  formula;

/// FavorableInfo转成json后的字符串
@property (strong,nonatomic,nonnull)  NSString*  favorableInfo;

/// 价格快照
@property (strong,nonatomic,nonnull)  NSString*  priceSnapShot;

/// 用户pin
@property (strong,nonatomic,nonnull)  NSString*  pin;

/// 自然单列表
@property (strong,nonatomic,nonnull)  NSString*  taskId;

/// 开始时间
@property (strong,nonatomic,nonnull)  NSString*  startTime;

/// 结束时间
@property (strong,nonatomic,nonnull)  NSString*  endTime;

/// 变配明细（1-升配补差价，2-降配延时，3-临时升配）
@property (strong,nonatomic,nonnull)  NSNumber*  processType;

/// 交易单模块sourceId
@property (strong,nonatomic,nonnull)  NSString*  sourceId;


-(id) initWithPrice:(NSNumber*) price
    priceScale4:(NSNumber*)priceScale4
    discount:(NSNumber*)discount
    discountedPrice:(NSNumber*)discountedPrice
    originalPrice:(NSNumber*)originalPrice
    resourceId:(NSString*)resourceId
    appCode:(NSString*)appCode
    serviceCode:(NSString*)serviceCode
    site:(NSNumber*)site
    region:(NSString*)region
    billingType:(NSNumber*)billingType
    timeSpan:(NSNumber*)timeSpan
    timeUnit:(NSNumber*)timeUnit
    networkOperator:(NSNumber*)networkOperator
    formula:(NSArray<Formula*>*)formula
    favorableInfo:(NSString*)favorableInfo
    priceSnapShot:(NSString*)priceSnapShot
    pin:(NSString*)pin
    taskId:(NSString*)taskId
    startTime:(NSString*)startTime
    endTime:(NSString*)endTime
    processType:(NSNumber*)processType
    sourceId:(NSString*)sourceId;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface OrderPriceProtocol :NSObject

/// 资源id
@property (strong,nonatomic,nonnull)  NSString*  resourceId;

/// 业务线
@property (strong,nonatomic,nonnull)  NSString*  appCode;

/// 产品线
@property (strong,nonatomic,nonnull)  NSString*  serviceCode;

/// 站点信息 0：主站  其他：专有云
@property (strong,nonatomic,nonnull)  NSNumber*  site;

/// 地域
@property (strong,nonatomic,nonnull)  NSString*  region;

/// 计费类型 1:按配置 2:按用量 3:包年包月
@property (strong,nonatomic,nonnull)  NSNumber*  billingType;

/// 时长
@property (strong,nonatomic,nonnull)  NSNumber*  timeSpan;

/// 时长类型 0:无(非包年包月) 1:小时 2:天 3:月 4:年
@property (strong,nonatomic,nonnull)  NSNumber*  timeUnit;

/// 网络类型 0:non 1:非BGP  2:BGP
@property (strong,nonatomic,nonnull)  NSNumber*  networkOperator;

/// 计算公式（配置细项）
@property (strong,nonatomic,nonnull)  NSArray<Formula*>*  formula;

/// 配置细项
@property (strong,nonatomic,nonnull)  NSString*  formulaStr;

/// 用户pin
@property (strong,nonatomic,nonnull)  NSString*  pin;

/// 具体商品数量，默认为1
@property (strong,nonatomic,nonnull)  NSNumber*  count;

/// 订单开始时间
@property (strong,nonatomic,nonnull)  NSString*  startTime;

/// 临时升配结束时间,临时升配时必传
@property (strong,nonatomic,nonnull)  NSString*  endTime;

/// 自然单列表
@property (strong,nonatomic,nonnull)  NSString*  taskId;

/// 交易单模块sourceId
@property (strong,nonatomic,nonnull)  NSString*  sourceId;


-(id) initWithResourceId:(NSString*) resourceId
    appCode:(NSString*)appCode
    serviceCode:(NSString*)serviceCode
    site:(NSNumber*)site
    region:(NSString*)region
    billingType:(NSNumber*)billingType
    timeSpan:(NSNumber*)timeSpan
    timeUnit:(NSNumber*)timeUnit
    networkOperator:(NSNumber*)networkOperator
    formula:(NSArray<Formula*>*)formula
    formulaStr:(NSString*)formulaStr
    pin:(NSString*)pin
    count:(NSNumber*)count
    startTime:(NSString*)startTime
    endTime:(NSString*)endTime
    taskId:(NSString*)taskId
    sourceId:(NSString*)sourceId;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface EbsSeperateBillVoRequest :NSObject

/// 核算分摊账单列表
@property (strong,nonatomic,nonnull)  NSArray<EbsSeperateBillVo*>*  ebsSeperateBillVoList;


-(id) initWithEbsSeperateBillVoList:(NSArray<EbsSeperateBillVo*>*) ebsSeperateBillVoList;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface ConsumptionProduct :NSObject

/// appCode
@property (strong,nonatomic,nonnull)  NSString*  appCode;

/// appCodeName
@property (strong,nonatomic,nonnull)  NSString*  appCodeName;

/// serviceCode
@property (strong,nonatomic,nonnull)  NSString*  serviceCode;

/// serviceCodeName
@property (strong,nonatomic,nonnull)  NSString*  serviceCodeName;

/// 优惠后金额
@property (strong,nonatomic,nonnull)  NSNumber*  actualFee;

/// 现金支付
@property (strong,nonatomic,nonnull)  NSNumber*  cashPayFee;

/// 余额支付
@property (strong,nonatomic,nonnull)  NSNumber*  balancePayFee;

/// 代金券支付金额
@property (strong,nonatomic,nonnull)  NSNumber*  cashCouponPayFee;

/// 欠费金额
@property (strong,nonatomic,nonnull)  NSNumber*  arrearFee;

/// ProductDetails
@property (strong,nonatomic,nonnull)  NSArray<Consumption*>*  productDetails;

/// ProductDetailList
@property (strong,nonatomic,nonnull)  ProductDetailList*  productDetailList;

/// 分组显示值
@property (strong,nonatomic,nonnull)  NSString*  groupTagValue;


-(id) initWithAppCode:(NSString*) appCode
    appCodeName:(NSString*)appCodeName
    serviceCode:(NSString*)serviceCode
    serviceCodeName:(NSString*)serviceCodeName
    actualFee:(NSNumber*)actualFee
    cashPayFee:(NSNumber*)cashPayFee
    balancePayFee:(NSNumber*)balancePayFee
    cashCouponPayFee:(NSNumber*)cashCouponPayFee
    arrearFee:(NSNumber*)arrearFee
    productDetails:(NSArray<Consumption*>*)productDetails
    productDetailList:(ProductDetailList*)productDetailList
    groupTagValue:(NSString*)groupTagValue;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface ConsumeBillQueryResultItem :NSObject

/// 账单id
@property (strong,nonatomic,nonnull)  NSNumber*  billId;

/// 用户pin
@property (strong,nonatomic,nonnull)  NSString*  pin;

/// appCode
@property (strong,nonatomic,nonnull)  NSString*  appCode;

/// appCodeName
@property (strong,nonatomic,nonnull)  NSString*  appCodeName;

/// serviceCode
@property (strong,nonatomic,nonnull)  NSString*  serviceCode;

/// serviceCodeName
@property (strong,nonatomic,nonnull)  NSString*  serviceCodeName;

/// 资源id
@property (strong,nonatomic,nonnull)  NSString*  resourceId;

/// 计费类型
@property (strong,nonatomic,nonnull)  NSNumber*  billingType;

/// 计费类型描述
@property (strong,nonatomic,nonnull)  NSString*  billingTypeName;

/// 账单开始时间
@property (strong,nonatomic,nonnull)  NSString*  billStart;

/// 账单结束时间
@property (strong,nonatomic,nonnull)  NSString*  billEnd;

/// 结算时间
@property (strong,nonatomic,nonnull)  NSString*  settleTime;

/// 账单日期
@property (strong,nonatomic,nonnull)  NSString*  billTime;

/// 账单金额
@property (strong,nonatomic,nonnull)  NSNumber*  billFee;

/// 账单总额
@property (strong,nonatomic,nonnull)  NSNumber*  totalFee;

/// 现金支付金额
@property (strong,nonatomic,nonnull)  NSNumber*  cashPayFee;

/// 代金券支付金额
@property (strong,nonatomic,nonnull)  NSNumber*  cashCouponPayFee;

/// 余额支付金额
@property (strong,nonatomic,nonnull)  NSNumber*  balancePayFee;

/// 折扣金额
@property (strong,nonatomic,nonnull)  NSNumber*  discountFee;

/// 欠费金额
@property (strong,nonatomic,nonnull)  NSNumber*  arrearFee;

/// 支付状态
@property (strong,nonatomic,nonnull)  NSNumber*  payState;

/// 创建时间
@property (strong,nonatomic,nonnull)  NSString*  createTime;

/// 新老计费标识（1:老计费   2：新计费）
@property (strong,nonatomic,nonnull)  NSNumber*  systemType;

/// 区域
@property (strong,nonatomic,nonnull)  NSString*  region;

/// 规格
@property (strong,nonatomic,nonnull)  NSString*  formula;

/// 规格
@property (strong,nonatomic,nonnull)  NSString*  formulaStr;

/// 标签明细
@property (strong,nonatomic,nonnull)  NSArray<ResourceTagVo*>*  tagDetails;


-(id) initWithBillId:(NSNumber*) billId
    pin:(NSString*)pin
    appCode:(NSString*)appCode
    appCodeName:(NSString*)appCodeName
    serviceCode:(NSString*)serviceCode
    serviceCodeName:(NSString*)serviceCodeName
    resourceId:(NSString*)resourceId
    billingType:(NSNumber*)billingType
    billingTypeName:(NSString*)billingTypeName
    billStart:(NSString*)billStart
    billEnd:(NSString*)billEnd
    settleTime:(NSString*)settleTime
    billTime:(NSString*)billTime
    billFee:(NSNumber*)billFee
    totalFee:(NSNumber*)totalFee
    cashPayFee:(NSNumber*)cashPayFee
    cashCouponPayFee:(NSNumber*)cashCouponPayFee
    balancePayFee:(NSNumber*)balancePayFee
    discountFee:(NSNumber*)discountFee
    arrearFee:(NSNumber*)arrearFee
    payState:(NSNumber*)payState
    createTime:(NSString*)createTime
    systemType:(NSNumber*)systemType
    region:(NSString*)region
    formula:(NSString*)formula
    formulaStr:(NSString*)formulaStr
    tagDetails:(NSArray<ResourceTagVo*>*)tagDetails;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface OrderPrice :NSObject

/// 折扣前总价
@property (strong,nonatomic,nonnull)  NSNumber*  totalPrice;

/// 折扣前总价4位
@property (strong,nonatomic,nonnull)  NSNumber*  totalPriceScale4;

/// 折扣后订单价格
@property (strong,nonatomic,nonnull)  NSNumber*  discountedTotalPrice;

/// 总折扣金额
@property (strong,nonatomic,nonnull)  NSNumber*  totalDiscount;

/// 计算完价格后的详细订单列表
@property (strong,nonatomic,nonnull)  NSArray<OrderPriceDetail*>*  list;

/// 订单原价 包年时 一年原价为12个月价格，totalPrice为10个月价格
@property (strong,nonatomic,nonnull)  NSNumber*  totalOriginalPrice;

/// 参与优惠的明细
@property (strong,nonatomic,nonnull)  NSNumber*  favorableInfos;

/// 备注
@property (strong,nonatomic,nonnull)  NSNumber*  remark;


-(id) initWithTotalPrice:(NSNumber*) totalPrice
    totalPriceScale4:(NSNumber*)totalPriceScale4
    discountedTotalPrice:(NSNumber*)discountedTotalPrice
    totalDiscount:(NSNumber*)totalDiscount
    list:(NSArray<OrderPriceDetail*>*)list
    totalOriginalPrice:(NSNumber*)totalOriginalPrice
    favorableInfos:(NSNumber*)favorableInfos
    remark:(NSNumber*)remark;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end
@interface BillSummary :NSObject

/// 用户pin
@property (strong,nonatomic,nonnull)  NSString*  pin;

/// appCode
@property (strong,nonatomic,nonnull)  NSString*  appCode;

/// 产品线代码名称
@property (strong,nonatomic,nonnull)  NSString*  appCodeName;

/// serviceCode
@property (strong,nonatomic,nonnull)  NSString*  serviceCode;

/// 产品代码名称
@property (strong,nonatomic,nonnull)  NSString*  serviceCodeName;

/// 计费类型
@property (strong,nonatomic,nonnull)  NSNumber*  billingType;

/// 计费类型描述
@property (strong,nonatomic,nonnull)  NSString*  billingTypeName;

/// 资源id
@property (strong,nonatomic,nonnull)  NSString*  resourceId;

/// 资源名称
@property (strong,nonatomic,nonnull)  NSString*  resourceName;

/// 区域
@property (strong,nonatomic,nonnull)  NSString*  region;

/// 费用类型
@property (strong,nonatomic,nonnull)  NSString*  actionTypeName;

/// 规格
@property (strong,nonatomic,nonnull)  NSString*  formula;

/// 计费开始时间
@property (strong,nonatomic,nonnull)  NSString*  startTime;

/// 计费结束时间
@property (strong,nonatomic,nonnull)  NSString*  endTime;

/// 账单生成时间
@property (strong,nonatomic,nonnull)  NSString*  billTime;

/// 账单总额
@property (strong,nonatomic,nonnull)  NSNumber*  totalFee;

/// 优惠金额
@property (strong,nonatomic,nonnull)  NSNumber*  discountFee;

/// 优惠后总价金额
@property (strong,nonatomic,nonnull)  NSNumber*  realTotalFee;

/// 代金券支付金额
@property (strong,nonatomic,nonnull)  NSNumber*  cashCouponPayFee;

/// 余额支付金额
@property (strong,nonatomic,nonnull)  NSNumber*  balancePayFee;

/// 现金支付金额
@property (strong,nonatomic,nonnull)  NSNumber*  cashPayFee;

/// 欠费金额
@property (strong,nonatomic,nonnull)  NSNumber*  arrearFee;

/// 标签明细
@property (strong,nonatomic,nonnull)  NSArray<ResourceTagVo*>*  tagDetails;


-(id) initWithPin:(NSString*) pin
    appCode:(NSString*)appCode
    appCodeName:(NSString*)appCodeName
    serviceCode:(NSString*)serviceCode
    serviceCodeName:(NSString*)serviceCodeName
    billingType:(NSNumber*)billingType
    billingTypeName:(NSString*)billingTypeName
    resourceId:(NSString*)resourceId
    resourceName:(NSString*)resourceName
    region:(NSString*)region
    actionTypeName:(NSString*)actionTypeName
    formula:(NSString*)formula
    startTime:(NSString*)startTime
    endTime:(NSString*)endTime
    billTime:(NSString*)billTime
    totalFee:(NSNumber*)totalFee
    discountFee:(NSNumber*)discountFee
    realTotalFee:(NSNumber*)realTotalFee
    cashCouponPayFee:(NSNumber*)cashCouponPayFee
    balancePayFee:(NSNumber*)balancePayFee
    cashPayFee:(NSNumber*)cashPayFee
    arrearFee:(NSNumber*)arrearFee
    tagDetails:(NSArray<ResourceTagVo*>*)tagDetails;
-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;                    
@end

#endif /* BillingModel_h */
